<font class="helptext">{{$HELP_PARTNERKA}}</font><?php

    global $mikron;

    $admin_open_account_id = $mikron->Cache->getCache('admin_open_account_id');

    // текущий активный кабинет
    if(!is_null($admin_open_account_id))
    {
        $cabinet = new T_USER($admin_open_account_id);
    }
    else
    {
        $cabinet = $mikron->Users->CurrentUser()->user;
    }

    if(is_null($cabinet))
    {
        header('Location: /');
        exit;
    }

    $cabid = $cabinet->id;
    
    $partners_summa = Array(); // сумма в копейках заработанная каждым рефералом
    $partners_date_reg = Array(); // дата регистрации каждого реферала

    $partners = $mikron->Queries->Query('T_USER', null, new Criterion('referal', $cabid), null, null, null, false, Array('id', 'login', 'dt'));
    $partners_count = $partners->count();
    $ref_summa = $cabinet->refamount->value;

    ?><h1>Ваша реферальная ссылка:</h1>
    <input class="niceinput" size="41" value="http://<?php echo $_SERVER['HTTP_HOST']; ?>/?r=<?php echo $cabinet->login->value; ?>"><br />

    <?php
    if(isset($_GET['refs']))
    {
        ?><h1>Список Ваших рефералов:</h1><?php
        while($partner = $partners->fetch())
        {
            $partner_login = $partner->login->value;
            $partners_date_reg[$partner_login] = $partner->dt->value;
            $partners_summa[$partner_login] = 0;
            try
            {
                $cr = new Criteria();
                $cr->Add(new Criterion('cabinet', $cabid));
                $cr->Add(new Criterion('partner', $partner->id));
                $partners_finance_op = $mikron->Queries->Query('T_OPERATIONS_LOG', null, $cr);
                while($fop = $partners_finance_op->fetch())
                {
                    $partners_summa[$partner_login] += $fop->amount->value;
                }
            }
            catch(Exception $ex)
            {
                $partners_summa[$partner_login] = $ex->getMessage();
            }
        }

        $tbl = new html_table(null, 'table4', '100%');
        $tbl->addhead('Логин');
        $tbl->addhead('Дата регистрации');
        $tbl->addhead('Сумма');
        foreach($partners_date_reg as $login => $regdate)
        {
            $tbl->newcol($login);
            $tbl->newcol($regdate);
            $ref_sum = round($partners_summa[$login]/100, 2);
            $tbl->newcol($ref_sum." <font class='disabledtext'>руб</font>");
        }
        $tbl->end();
                
    }
    else
    {
        if($partners_count == 0)
        {
            ?>
                <p>
                <font style="color: #f77;">У Вас пока нет рефералов.</font>
                </p>
            <?php
        }
        else
        {
            ?>
            <p>
            Количество Ваших рефералов — 
            <a title="Показать список рефералов" href="/?refs"><?php echo $partners_count; ?></a>
            </p>
            <?php
        }
    }
    if(isset($_GET['refstat']))
    {
        // Все реферальные выплаты
        $operations = $mikron->Queries->Query('T_OPERATIONS_LOG', null, new Criteria (Array(new Criterion('cabinet', $cabid), new Criterion('source', 7))));
        $ref_summa = 0;
        while($operation = $operations->fetch())
        {
            $summa = $operation->amount->value;
            $ref_summa += $summa;
            $partner_login = $operation->partner->value->login->value;
            if(!array_key_exists($partner_login, $partners_summa))
            {
                $partners_summa[$partner_login] = 0;
            }
            $partners_summa[$partner_login] += $summa;
        }
        
        ?><h1>Получено от рефералов:</h1><?php
        $tbl = new html_table(null, "table4", "100%");
        $tbl->addhead("Сумма");
        $tbl->addhead("Реферал");
        $tbl->addhead("Когда");
        $operations->reset();
        while($operation = $operations->fetch())
        {
            $tbl->newcol(round($operation->amount->value/100, 2)." <font style=\"color: #aaa;\">руб</font>");
            $tbl->newcol($operation->partner->value->login->value);
            $dt = strtotime($operation->dt->value);
            $tbl->newcol(MikronDateTime::BeautifulDate($dt, false, true)." <font style=\"color: #aaa;\">".date("H:i:s", $dt)."</font>");
        }
        $tbl->end();
        
    }
    else
    {
        ?>
        <p>Получено от рефералов — 
        <?php if($ref_summa == 0) { ?>0 руб.<?php } else { ?><a title="Показать историю начислений" href="/?refstat"><?php echo round($ref_summa/100, 2); ?> руб.</a>
        </p>
        <?php }
    }

?>